In recent years, with the fast popularization and popularizing of the Internet, the network performance gradually becomes the focus to which people pay close attention. In the existing network, various generally recognized standard protocols and manufacturer privately owned protocols are applied extensively, and key devices forming that network, such as, a router, a switchboard, a Broadband Remote Access Server (BRAS), the firewall, the host computer, etc., all need to maintain and deal with the various protocols therein.
The processing to the protocols by the network device is usually performed by a processor (the central processing unit (CPU), the network processor (NP), etc.); and when the device needs to send a large number of protocol packets within a short time, it might be unable to send so much packets because the processor is busy. The ability of the processor itself is limited, and with the increasing of the network applications, the demand of transmitting the messages may be increased unlimitedly, so how to guarantee all the messages be sent out successfully becomes the problem needed to be solved urgently.
Usually the protocol message transmission is divided into two types, one is that the message needs to be immediately transmitted once, and the other one is that the message needs to be transmitted periodically. The former, due to the transmission has no regularity, usually occurs at a protocol initialization phase and the message quantity is little, thus there is no need to optimize the packet transmission performance, for example, establishment of an FTP connection. The latter message is transmitted periodically and is usually used for the maintenance of the connection or the detection of neighbors; because a problem of transmission synchronization generally exists, it will lead to overload of the CPU in a short time, thereby causing problems that the neighbor is disconnected, and the protocol is overtime, etc.
Due to periodic packet transmission of the protocol, when the device has multiple ports required to transmit the packets and their packet transmission intervals are the same, it makes the CPU of the device to be overload, then the transmitting of messages is seriously affected, and meanwhile it may further influence the receiving process of the protocol messages at a receiving end. By taking a link layer discovery protocol LLDP as an example, after the LLDP protocol is started, all the ports in UP will be detected, and then the LLDP messages are periodically transmitted at the ports in UP respectively. Because the time for detecting all the ports in UP in turn is very short, all the ports in UP nearly synchronously transmit the LLDP messages. If there are 64 ports in UP, then the CPU will send out 64 LLDP messages at one time, and then sends the 64 LLDP messages once every other cycle. And by further taking an edge virtual bridge EVB protocol mentioned in an IEEE 802.1Qbg protocol as an example, its EVB TLV is carried in the LLDP message. If there are 1000 virtual interfaces in one physical port and their transmission cycles of EVB TLVs are same, then 1000 LLDP messages will be transmitted every other cycle; and if all the 64 ports transmit at the same time, then the CPU needs to transmit 64000 LLDP messages at one time.